#ifndef C_QIMAGE_H
#define C_QIMAGE_H

/****************************************************************************
** QImageTextKeyLang C bindings generated from reading C++ file 'qimage.h'
**
** Created: Tue Jul 30 19:22:30 2002
**      by: The Qt Meta Object Compiler ($Revision: 2.53 $)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/

C_EXPORT QImageTextKeyLangH QImageTextKeyLang_create(const char* k, const char* l);
C_EXPORT void QImageTextKeyLang_destroy(QImageTextKeyLangH handle);
C_EXPORT QImageTextKeyLangH QImageTextKeyLang_create2();
C_EXPORT QImageH QImage_create();
C_EXPORT void QImage_destroy(QImageH handle);
C_EXPORT QImageH QImage_create2(int width, int height, int depth, int numColors, QImageEndian bitOrder);
C_EXPORT QImageH QImage_create3(const QSizeH p1, int depth, int numColors, QImageEndian bitOrder);
C_EXPORT QImageH QImage_create4(PWideString fileName, const char* format);

C_EXPORT QImageH QImage_create6(const QByteArrayH data);
C_EXPORT QImageH QImage_create7(uchar* data, int w, int h, int depth, QRgbH colortable, int numColors, QImageEndian bitOrder);

C_EXPORT QImageH QImage_create9(const QImageH p1);
C_EXPORT void QImage_detach(QImageH handle);
C_EXPORT void QImage_copy(QImageH handle, QImageH retval);
C_EXPORT void QImage_copy2(QImageH handle, QImageH retval, int x, int y, int w, int h, int conversion_flags);

C_EXPORT void QImage_copy4(QImageH handle, QImageH retval, PRect p1);
C_EXPORT bool QImage_isNull(QImageH handle);
C_EXPORT int QImage_width(QImageH handle);
C_EXPORT int QImage_height(QImageH handle);
C_EXPORT void QImage_size(QImageH handle, PSize retval);
C_EXPORT void QImage_rect(QImageH handle, PRect retval);
C_EXPORT int QImage_depth(QImageH handle);
C_EXPORT int QImage_numColors(QImageH handle);
C_EXPORT QImageEndian QImage_bitOrder(QImageH handle);
C_EXPORT void QImage_color(QImageH handle, QRgbH retval, int i);
C_EXPORT void QImage_setColor(QImageH handle, int i, QRgbH c);
C_EXPORT void QImage_setNumColors(QImageH handle, int p1);
C_EXPORT bool QImage_hasAlphaBuffer(QImageH handle);
C_EXPORT void QImage_setAlphaBuffer(QImageH handle, bool p1);
C_EXPORT bool QImage_allGray(QImageH handle);
C_EXPORT bool QImage_isGrayscale(QImageH handle);
C_EXPORT unsigned char * QImage_bits(QImageH handle);
C_EXPORT unsigned char * QImage_scanLine(QImageH handle, int p1);
C_EXPORT uchar *  * QImage_jumpTable(QImageH handle);
C_EXPORT QRgbH QImage_colorTable(QImageH handle);
C_EXPORT int QImage_numBytes(QImageH handle);
C_EXPORT int QImage_bytesPerLine(QImageH handle);



C_EXPORT void QImage_reset(QImageH handle);
C_EXPORT void QImage_fill(QImageH handle, uint pixel);
C_EXPORT void QImage_invertPixels(QImageH handle, bool invertAlpha);
C_EXPORT void QImage_convertDepth(QImageH handle, QImageH retval, int p1);
C_EXPORT void QImage_convertDepthWithPalette(QImageH handle, QImageH retval, int p1, QRgbH p, int pc, int cf);
C_EXPORT void QImage_convertDepth2(QImageH handle, QImageH retval, int p1, int conversion_flags);
C_EXPORT void QImage_convertBitOrder(QImageH handle, QImageH retval, QImageEndian p1);
C_EXPORT void QImage_smoothScale(QImageH handle, QImageH retval, int width, int height);
C_EXPORT void QImage_createAlphaMask(QImageH handle, QImageH retval, int conversion_flags);
C_EXPORT void QImage_createHeuristicMask(QImageH handle, QImageH retval, bool clipTight);
C_EXPORT void QImage_mirror(QImageH handle, QImageH retval);
C_EXPORT void QImage_mirror2(QImageH handle, QImageH retval, bool horizontally, bool vertically);
C_EXPORT void QImage_swapRGB(QImageH handle, QImageH retval);
C_EXPORT QImageEndian QImage_systemBitOrder();
C_EXPORT QImageEndian QImage_systemByteOrder();
C_EXPORT const char* QImage_imageFormat(PWideString fileName);
C_EXPORT void QImage_inputFormats(QStrListH retval);
C_EXPORT void QImage_outputFormats(QStrListH retval);
C_EXPORT void QImage_inputFormatList(QStringListH retval);
C_EXPORT void QImage_outputFormatList(QStringListH retval);
C_EXPORT bool QImage_load(QImageH handle, PWideString fileName, const char* format);
C_EXPORT bool QImage_loadFromData(QImageH handle, const uchar* buf, uint len, const char* format);
C_EXPORT bool QImage_loadFromData2(QImageH handle, QByteArrayH data, const char* format);
C_EXPORT bool QImage_save(QImageH handle, PWideString fileName, const char* format);
C_EXPORT bool QImage_save2(QImageH handle, PWideString fileName, const char* format, int quality);
C_EXPORT bool QImage_valid(QImageH handle, int x, int y);
C_EXPORT int QImage_pixelIndex(QImageH handle, int x, int y);
C_EXPORT void QImage_pixel(QImageH handle, QRgbH retval, int x, int y);
C_EXPORT void QImage_setPixel(QImageH handle, int x, int y, uint index_or_rgb);
C_EXPORT int QImage_dotsPerMeterX(QImageH handle);
C_EXPORT int QImage_dotsPerMeterY(QImageH handle);
C_EXPORT void QImage_setDotsPerMeterX(QImageH handle, int p1);
C_EXPORT void QImage_setDotsPerMeterY(QImageH handle, int p1);
C_EXPORT void QImage_offset(QImageH handle, PPoint retval);
C_EXPORT void QImage_setOffset(QImageH handle, const QPointH p1);

C_EXPORT void QImage_textLanguages(QImageH handle, QStringListH retval);
C_EXPORT void QImage_textKeys(QImageH handle, QStringListH retval);
C_EXPORT void QImage_text(QImageH handle, PWideString retval, const char* key, const char* lang);
C_EXPORT void QImage_text2(QImageH handle, PWideString retval, const QImageTextKeyLangH p1);
C_EXPORT void QImage_setText(QImageH handle, const char* key, const char* lang, PWideString p3);
C_EXPORT QImageIOH QImageIO_create();
C_EXPORT void QImageIO_destroy(QImageIOH handle);
C_EXPORT QImageIOH QImageIO_create2(QIODeviceH ioDevice, const char* format);
C_EXPORT QImageIOH QImageIO_create3(PWideString fileName, const char* format);
C_EXPORT const QImageH QImageIO_image(QImageIOH handle);
C_EXPORT int QImageIO_status(QImageIOH handle);
C_EXPORT const char* QImageIO_format(QImageIOH handle);
C_EXPORT QIODeviceH QImageIO_ioDevice(QImageIOH handle);
C_EXPORT void QImageIO_fileName(QImageIOH handle, PWideString retval);
C_EXPORT const char* QImageIO_parameters(QImageIOH handle);
C_EXPORT void QImageIO_description(QImageIOH handle, PWideString retval);
C_EXPORT void QImageIO_setImage(QImageIOH handle, const QImageH p1);
C_EXPORT void QImageIO_setStatus(QImageIOH handle, int p1);
C_EXPORT void QImageIO_setFormat(QImageIOH handle, const char* p1);
C_EXPORT void QImageIO_setIODevice(QImageIOH handle, QIODeviceH p1);
C_EXPORT void QImageIO_setFileName(QImageIOH handle, PWideString p1);
C_EXPORT void QImageIO_setParameters(QImageIOH handle, const char* p1);
C_EXPORT void QImageIO_setDescription(QImageIOH handle, PWideString p1);
C_EXPORT bool QImageIO_read(QImageIOH handle);
C_EXPORT bool QImageIO_write(QImageIOH handle);
C_EXPORT const char* QImageIO_imageFormat(PWideString fileName);
C_EXPORT const char* QImageIO_imageFormat2(QIODeviceH p1);
C_EXPORT void QImageIO_inputFormats(QStrListH retval);
C_EXPORT void QImageIO_outputFormats(QStrListH retval);


#endif
